package com.edais.service;

import com.edais.domain.Bank;
import com.edais.domain.UserQuickWithdraw;
import com.edais.domain.UserRecePayCard;
import com.yunzhi.domain.ResultDTO;

import java.util.List;
import java.util.Map;

public interface UserCardService {
	public Map<String, Object> queryUserCardInfoByUserId(Map<String,Object> requestMap);
	
	public Map<String,String> queryCardBinLL(Map<String,String> requestMap);
	
	public Map<String,String> queryUserSignInfo(Map<String,String> requestMap);
	
	public Map<String,String> saveUserBankCardInfo(Map<String,String> requestMap) throws NumberFormatException, Exception; 
	
	public Map<String,Object> updateUserBankCardByReqNum(Map<String,Object> requestMap) throws Exception;
	
	public Map<String,Object> updateUserBindindBankCardInfo(Map<String,Object> requestMap)throws Exception;
	
	public Map<String,Object> dealLLPayFastPayToken(Map<String,Object> requestMap);
	
	public Map<String,Object> llpayWithdrawalsNotify(Map<String,Object> requestMap);

	public Map<String,Object> fuyouWithdrawalsNotify(Map<String, Object> requestMap);
	
	public Map<String,Object> updateFailTopUpOrder(Map<String,Object> requestMap);
	
	public Map<String,Object> queryBankIdByBankCode(Map<String,Object> requestMap);
	
	public void updateUserCardCityAndProvince(UserRecePayCard userCardPayCard);
	
	public Map<String,Object> coreLLPayNotify(Map<String,Object> requestMap) throws Exception;
	
	public ResultDTO addUnbindingCardApply(Map<String,Object> requestMap,String logInfo)throws Exception;
	
	public Map<String,Object> unbdingUserCard(String userId)throws Exception;
	
	public Map<String,Object> llpayBankCardUnbind(String userId,String noAgree)throws Exception;
	
	public List<UserRecePayCard> queryUserCardListInfoByUserId(Map<String,Object> requestMap);
	
	public UserQuickWithdraw queryUserQuickCountByIdAndMonth(Map<String,Object> paramsMap);
	
	public String queryNextWorkingDay(String currentDay);
	
	public Long queryWorkingDayByCurrentDay(String currentDay);
	
	public void sendErrorMessage(String userId,String content) throws Exception;
	
	public UserQuickWithdraw queryUserQuickCountByUserId(Map<String,Object> paramsMap);
	
	public Bank queryBankInfoByBankCode(Map<String,Object> paramMap);
	
}
